Rychlost odesilani data pres UDP
Otázka od: Malecek Ondrej
20. 9. 2002 15:15
Mel bych otazecku na odborniky pres site => pouzivam TUPDBlockSocket ze
synapse k odesilani dat. Vim, ze po ceste k cili je promenna prenosova
rychlost => PC ktere odesila data ma na ethernetu nekonecne velkou
prenosovou rychlost proti jinym castim site po ceste k cili. Jsem schopen
nejak zjisit, ze doslo k "zahlceni" prenosove cesty. Experimentalne mam
zjisteno, ze k nejakemu zahlceni dochazi (ztraceji se pakety, pokud se data
odesilaji prilis rychle po sobe, pokud se mezi pakety vkladaji casove
mezery, chodi vse OK, pricemz pokud si to same zkousim po lokalni 100 Mb
siti, chodi to OK). Da se cas, ktery je nutno vkladat mezi pakety nejako
exaktne zjistit. Napr. jestli to treba, pokud se cesta nekde "zahlti" to
zpatky, neposila nejake ICMP hlasky, nebo neco takoveho. Nebo je jedina
sance to delat nejako "experimentalne". Rady typu "pouzij TCP" bouzel
nepripadaji v uvahu.
Diky
O
Odpovedá: Dalibor Toman
20. 9. 2002 14:21
> Mel bych otazecku na odborniky pres site => pouzivam TUPDBlockSocket
ze
> synapse k odesilani dat. Vim, ze po ceste k cili je promenna
prenosova
> rychlost => PC ktere odesila data ma na ethernetu nekonecne velkou
> prenosovou rychlost proti jinym castim site po ceste k cili. Jsem
schopen
> nejak zjisit, ze doslo k "zahlceni" prenosove cesty. Experimentalne
mam
> zjisteno, ze k nejakemu zahlceni dochazi (ztraceji se pakety, pokud
se data
> odesilaji prilis rychle po sobe, pokud se mezi pakety vkladaji
casove
> mezery, chodi vse OK, pricemz pokud si to same zkousim po lokalni
100 Mb
> siti, chodi to OK). Da se cas, ktery je nutno vkladat mezi pakety
nejako
> exaktne zjistit. Napr. jestli to treba, pokud se cesta nekde
"zahlti" to
> zpatky, neposila nejake ICMP hlasky, nebo neco takoveho. Nebo je
jedina
> sance to delat nejako "experimentalne". Rady typu "pouzij TCP"
bouzel
> nepripadaji v uvahu.
pokud se nepletu, zadna ICMP hlaska Ti neprijde (packet je proste
tise zahozen). Duvodem bude nejspis to, ze takove ICMP hlasky
by zbytecne zvysovaly datovy tok.
Cili jedinym resenim je zpetna vazba od protejsi strany - tj. musis
doplnit
Tvuj komunikacni protokol tak, aby Ti chodily zpet informace s
potvrzenim,
ze packet ten a ten byl skutecne prijat (lze vymyslet ruzne
optimalizace
typu potvrzovani vetsiho mnozstvi packetu najednou atd).
D. Toman
Odpovedá: Skopalik Slavomir
20. 9. 2002 15:42
Tak si naimplementuj TCP nad UDP, staci k tomu podrobny popis TCP a melo by to
byt bez problemu.
Stejne si musis vyresit potvrzovani paketu, casove mezery jsou ponekud
nespolehlive.
Co se tyka zahlceni, tak prave TCP ma na to algorimy. Ja bych to zjednodusene
resil jako max pocet nepotvrzenych dat na lince.
Slavek
> exaktne zjistit. Napr. jestli to treba, pokud se cesta nekde "zahlti" to
> zpatky, neposila nejake ICMP hlasky, nebo neco takoveho. Nebo je jedina
> sance to delat nejako "experimentalne". Rady typu "pouzij TCP" bouzel
> nepripadaji v uvahu.
Odpovedá: Malecek Ondrej
20. 9. 2002 12:48
> -----Puvodni zprava-----
Mel bych otazecku na odborniky pres site => pouzivam TUPDBlockSocket
> ze
> > synapse k odesilani dat. Vim, ze po ceste k cili je promenna
> prenosova
> > rychlost => PC ktere odesila data ma na ethernetu nekonecne velkou
> > prenosovou rychlost proti jinym castim site po ceste k cili. Jsem
> schopen
> > nejak zjisit, ze doslo k "zahlceni" prenosove cesty. Experimentalne
> mam
> > zjisteno, ze k nejakemu zahlceni dochazi (ztraceji se pakety, pokud
> se data
> > odesilaji prilis rychle po sobe, pokud se mezi pakety vkladaji
> casove
> > mezery, chodi vse OK, pricemz pokud si to same zkousim po lokalni
> 100 Mb
> > siti, chodi to OK). Da se cas, ktery je nutno vkladat mezi pakety
> nejako
> > exaktne zjistit. Napr. jestli to treba, pokud se cesta nekde
> "zahlti" to
> > zpatky, neposila nejake ICMP hlasky, nebo neco takoveho. Nebo je
> jedina
> > sance to delat nejako "experimentalne". Rady typu "pouzij TCP"
> bouzel
> > nepripadaji v uvahu.
--------------------------------------------------------------------------
> pokud se nepletu, zadna ICMP hlaska Ti neprijde (packet je proste
> tise zahozen). Duvodem bude nejspis to, ze takove ICMP hlasky
> by zbytecne zvysovaly datovy tok.
>
> Cili jedinym resenim je zpetna vazba od protejsi strany - tj. musis
> doplnit
> Tvuj komunikacni protokol tak, aby Ti chodily zpet informace s
> potvrzenim,
> ze packet ten a ten byl skutecne prijat (lze vymyslet ruzne
> optimalizace
> typu potvrzovani vetsiho mnozstvi packetu najednou atd).
--------------------------------------------------------------------------
No mam nad UPD udelanou nejakou takovou nadstavbu. Bohuzel jsem se blahove
domnival, ze pakety budu "delit" do jakychsi segmentu a potvrzovat si budu
az ty segmenty (segment obsahuje vice paketu), pricemz si osetrim i pripadny
vypadek paketu uvnitr segmentu (NACK s vyzadanim nedorucenych paketu). Pokud
tam ale pakety v ramci segmentu "naperu" okamzite po sobe, je to krize.
Neexistuje neco jaka obdoba zjistovani max. MTU po trase, cim by se dala
zjistit prenosova rychlost ??? Pokud potvrzuju kazdy paket je to ukrutne
pomale.
O
Odpovedá: Dalibor Toman
20. 9. 2002 15:04
> No mam nad UPD udelanou nejakou takovou nadstavbu. Bohuzel jsem se
blahove
> domnival, ze pakety budu "delit" do jakychsi segmentu a potvrzovat
si budu
> az ty segmenty (segment obsahuje vice paketu), pricemz si osetrim i
pripadny
> vypadek paketu uvnitr segmentu (NACK s vyzadanim nedorucenych
paketu). Pokud
> tam ale pakety v ramci segmentu "naperu" okamzite po sobe, je to
krize.
> Neexistuje neco jaka obdoba zjistovani max. MTU po trase, cim by se
dala
> zjistit prenosova rychlost ??? Pokud potvrzuju kazdy paket je to
ukrutne
> pomale.
>
takovou adaptaci si musis udelat sam...
D. Toman